const express = require('express');
const { JWT_SECRET_KEY } = require('../config')
const app = express();
const { expressjwt } = require('express-jwt');
const cors = require('cors');
const midWares = require('./middle-wares')

// 调整中间件顺序（数据库中间件应该在最前面）
app.use(midWares.dbMidWare) // 先挂载数据库中间件
app.use(midWares.resBodyMidWare)
/**使用unless({ path: [/^\/unAuth\//] }) 制定那些接口不需要进行token的身份验证 */
app.use(expressjwt({ secret: JWT_SECRET_KEY, algorithms: ['HS256'] }).unless({ path: [/^\/unAuth\//] }))
/**配置全局cors中间件解决跨域 */
app.use(cors())
/**配置express内置解析post请求参数中间件 */
app.use(express.urlencoded({ extended: false }))
const routers = require('./router')
routers(app)
app.use(midWares.errMidWare)
/**启动服务 */
app.listen(10086, (res) => {
    console.log('服务启动成功: http://120.0.0.1:10086');
}) 